Page({
  data: {
    goodsid: null,  // 初始值为 null
    product: {}     // 存储商品详细信息
  },

  onLoad(options) {
    const goodsid = options.id;  // 获取传递的商品 ID

    // 检查 goodsid 是否有效
    if (goodsid) {
      this.setData({
        goodsid: goodsid  // 将商品 ID 存储到页面的 data 中
      }, () => {
        // 在 setData 更新后，调用 addToCart
        console.log("商品 ID 更新为：", this.data.goodsid);
      });
    } else {
      console.log("未能获取到商品 ID");
    }

    // 根据商品 ID 获取商品详细信息
    wx.request({
      url: `http://127.0.0.1:3000/api/goods/${goodsid}`,  // 根据商品 ID 请求后端接口
      method: 'GET',
      success: (res) => {
        console.log("商品详情：", res.data);  
        this.setData({
          product: res.data  // 将商品数据存储到页面的 data 中
        });
      },
      fail: () => {
        wx.showToast({
          title: '获取商品详情失败',
          icon: 'none'
        });
      }
    });
  },

  addToCart() {
    const goodsid = this.data.goodsid;  // 从 data 中获取 goodsid

    if (!goodsid) {
      console.log("无法获取商品 ID，无法添加到购物车");
      return;
    }

    console.log("当前商品 ID：", goodsid);

    // 发送请求加入购物车
    wx.request({
      url: `http://127.0.0.1:3000/api/addcartgoods/${goodsid}`,  // 后端接口
      method: 'POST',  // 请求方法
      data: {
        cartid: 101,  // 默认 cartid 为 101
        goodsid: goodsid,  // 商品 ID
        number: 1,  // 假设默认数量为 1
      },
      success: (res) => {
        if (res.data.success) {
          wx.showToast({
            title: '加入购物车成功',
            icon: 'none',
            duration: 2000
          });
          console.log("商品加入购物车，商品ID:", goodsid, "购物车ID:", 101, "数量:", 1);
        } else {
          wx.showToast({
            title: '加入购物车失败',
            icon: 'none',
            duration: 2000
          });
          console.log("加入购物车失败");
        }
      },
      fail: (error) => {
        wx.showToast({
          title: '请求失败',
          icon: 'none',
          duration: 2000
        });
        console.error("请求失败：", error);
      }
    });
  },

  buyNow() {
    // 跳转到订单结算页面，传递商品信息
    wx.navigateTo({
      url: `/pages/order/order?productId=${this.data.product.id}`
    });
  }
});
